]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
[ShellAppSystem] Don't use g_desktop_app_info_new
authorMaxim Ermilov <zaspire@rambler.ru>
Mon, 11 Oct 2010 14:37:21 +0000 (18:37 +0400)
committerMaxim Ermilov <zaspire@rambler.ru>
Mon, 11 Oct 2010 14:37:21 +0000 (18:37 +0400)
It doesn't fully support convert id to path. For example: multiply
subdirs, "LegacyDir prefix" in .menu files...
https://bugzilla.gnome.org/show_bug.cgi?id=614879

src/shell-app-system.c

index 3fce1326b71fdfa3e6cecb558c73af65745ad45a..3bfca45aa43f8165d178ef28e69e3ab6af142867 100644 (file)
@@ -1311,7 +1311,6 @@ shell_app_info_launch_full (ShellAppInfo *info,
                             GError      **error)
 {
   GDesktopAppInfo *gapp;
-  char *filename;
   GdkAppLaunchContext *context;
   gboolean ret;
   ShellGlobal *global;
@@ -1333,11 +1332,13 @@ shell_app_info_launch_full (ShellAppInfo *info,
     }
   else if (info->type == SHELL_APP_INFO_TYPE_ENTRY)
     {
-      gapp = g_desktop_app_info_new (shell_app_info_get_id (info));
+      /* Can't use g_desktop_app_info_new, see bug 614879 */
+      const char *filename = gmenu_tree_entry_get_desktop_file_path ((GMenuTreeEntry *)info->entry);
+      gapp = g_desktop_app_info_new_from_filename (filename);
     }
   else
     {
-      filename = shell_app_info_get_desktop_file_path (info);
+      char *filename = shell_app_info_get_desktop_file_path (info);
       gapp = g_desktop_app_info_new_from_filename (filename);
       g_free (filename);
     }